package cn.icanci.ladybird.controller;

import cn.icanci.ladybird.service.TicketDetailsService;
import cn.icanci.ladybird.service.UserInfoService;
import cn.icanci.ladybird.service.admin.AdminUpdateTicketService;
import cn.icanci.ladybird.service.admin.AdminUploadTicketService;
import cn.icanci.ladybird.service.user.UserProduceService;
import cn.icanci.ladybird.service.util.NginxService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

/**
 * @author: icanci
 * @date: Created in 2020/10/3 8:59
 * @classAction: 管理员页面展示控制层
 */
@SuppressWarnings("all")
@Controller
@Slf4j
@RequestMapping("/api/v1/pri/admin")
public class AdminDataController {

    @Autowired
    private UserInfoService userInfoService;
    @Autowired
    private TicketDetailsService ticketDetailsService;
    @Autowired
    private AdminUploadTicketService adminUploadTicketService;
    @Autowired
    private NginxService nginxService;
    @Autowired
    private UserProduceService userProduceService;
    @Autowired
    private AdminUpdateTicketService adminUpdateService;

    /**
     * 首页跳转资源
     *
     * @param model 数据处理对象
     * @return 返回视图地址
     */
    @RequestMapping("/index")
    public String adminIndex(Model model) {
//        UserInfo xxx = userInfoService.queryOneByUsername("xxx");
        return "admin/index";
    }

    /**
     * 跳转到 403 错误页面
     *
     * @param model 数据处理对象
     * @return 返回视图地址
     */
    @RequestMapping("/403")
    public String admin403(Model model) {
        return "admin/403";
    }


    /**
     * 跳转到 其他异常 错误页面
     *
     * @param model 数据处理对象
     * @return 返回视图地址
     */
    @RequestMapping("/otherError")
    public String adminOtherError(Model model) {
        return "admin/otherError";
    }

    /**
     * 跳转到 404 错误页面
     *
     * @param model 数据处理对象
     * @return 返回视图地址
     */
    @RequestMapping("/404")
    public String admin404(Model model) {
        return "admin/404";
    }

    /**
     * 跳转到 500 错误页面
     *
     * @param model 数据处理对象
     * @return 返回视图地址
     */
    @RequestMapping("/500")
    public String admin500(Model model) {
        return "admin/500";
    }

    /**
     * 跳转到 admin-login 管理员登录日志
     *
     * @param model 数据处理对象
     * @return 返回视图地址
     */
    @RequestMapping("/admin-login")
    public String adminAdminLogin(Model model) {
        return "admin/admin-login";
    }


    /**
     * 跳转到 email-list 邮件列表界面
     *
     * @param model 数据处理对象
     * @return 返回视图地址
     */
    @RequestMapping("/email-list")
    public String adminEmailList(Model model) {
        return "admin/email-list";
    }

    /**
     * 跳转到 order-list 订单列表页面
     *
     * @param model 数据处理对象
     * @return 返回视图地址
     */
    @RequestMapping("/order-list")
    public String adminOrderList(Model model) {
        return "admin/order-list";
    }

    /**
     * 跳转到 short-msg-list 短信列表界面
     *
     * @param model 数据处理对象
     * @return 返回视图地址
     */
    @RequestMapping("/short-msg-list")
    public String adminShortMsgList(Model model) {
        return "admin/short-msg-list";
    }


    /**
     * 跳转到 update-log 系统更新日志
     *
     * @param model 数据处理对象
     * @return 返回视图地址
     */
    @RequestMapping("/update-log")
    public String adminUpdateLog(Model model) {
        return "admin/update-log";
    }

    /**
     * 跳转到 user-login 用户登录日志
     *
     * @param model 数据处理对象
     * @return 返回视图地址
     */
    @RequestMapping("/user-login")
    public String adminUserLogin(Model model) {
        return "admin/user-login";
    }

    /**
     * 跳转到 website-data-list 网站信息列表
     *
     * @param model 数据处理对象
     * @return 返回视图地址
     */
    @RequestMapping("/website-data-list")
    public String adminWebsiteDataList(Model model) {
        return "admin/website-data-list";
    }

    /**
     * 跳转到 website-data-statistics 用户登录日志
     *
     * @param model 数据处理对象
     * @return 返回视图地址
     */
    @RequestMapping("/website-data-statistics")
    public String adminWebsiteDataStatistics(Model model) {
        return "admin/website-data-statistics";
    }

}
